# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.shortcuts import render,redirect
from models import Column,Article

# Create your views here.
from django.http import HttpResponse

#index视图函数，显示主页的导航元素等内容
def index(request):
    #显示home_display字段为True的栏目名称
    home_display_columns = Column.objects.filter(home_display=True)
    nav_display_columns = Column.objects.filter(nav_display=True)
 
    return render(request, 'index.html', {
        'home_display_columns': home_display_columns,
        'nav_display_columns': nav_display_columns,
    })
'''
column_detail函数后面除了request参数，还有column_slug参数，这个参数就需要从
url中传递，所以在相应视图函数的url中，写了r'^column/(?P<column_slug>[^/]+)/$'正则
表达式来匹配column_slug参数。如果视图函数只有request参数，那么可以直接用以下函数
传递参数给模板
def index(request):
    tem = {"sht":24,"dht":21};
    return render(request,'base.html',{"tem":tem})
在相应的html中需要把tem数据放在{{ }}模块中
'''
def column_detail(request, column_slug):
    column = Column.objects.get(slug=column_slug)
    return render(request, 'news/column.html', {'column': column})
 
'''
这里视图函数有 pk和article_slug两个参数，因为slug字段会重复出现，所以使用pk主键
唯一标识url,但是如果，想一想一篇文章的网址你很可能会修改它，当你再次修改的时候，
可能搜索引擎已经收录了，或者其它人已经收藏到了书签中，这样，原来的网址和新的网址
都是可以访问网站的！搜索引擎会发现你多个网址对应到不同的内容,当我们发现，
访问用的article_slug 和现在的article_slug不一样的时候，重定向（301）跳转到新的网址！
'''
def article_detail(request, pk, article_slug):
    article = Article.objects.get(pk=pk)
    #访问用的article_slug 和现在的article_slug不一样的时候，重定向（301）跳转到新的网址
    if article_slug != article.slug:
        return redirect(article, permanent=True)
    return render(request, 'news/article.html', {'article': article})




